package co.fitstart.data.entity;

import java.util.Date;

import com.demo2do.core.utils.DateFormatUtils;

import co.fitstart.entity.order.Order;

/**
 * goago账单实体类
 * @author haiyan_xiao
 *
 */
public class BillData {
    /** 商家编号 */
    private String shopId;
    
    /** 商家名称 */
    private String shopName;
    
    /** 实体店编号 */
    private String shopEntityId;
    
    /** 实体店名称 */
    private String shopEntityName;
    
    /** 设备序列号 */
    private String terminalNumber;
    
    /** 店铺地址 */
    private String shopEntityAddress;
    
    /** 电话 */
    private String telephone;
    
    /** 售货员 */
    private String saler;
    
    /** 收银台 */
    private String checkstand;
    
    /** 收银员 */
    private String cashier;
    
    /** 应收金额 */
    private String receivableAmount;
    
    /** 商品数量 */
    private String totalNum;
    
    /** 小票流水号 */
    private String billSerialNumber;
    
    /** 总金额 */
    private String totalFee;
    
    /** 实收金额 */
    private String paidAmount;
    
    /** 折扣金额 */
    private String discountAmount;
    
    /** 优惠金额 */
    private String couponAmount;
    
    /** 找零金额 */
    private String changeAmount;
    
    /** 结算方式 */
    private String settlementWay;
    
    /** 销售时间 */
    private String saleTime;
    
    /** 会员卡号 */
    private String memberCardNumber;
    
    /** 累计消费 */
    private String totalConsumption;
    
    /** 网址 */
    private String website;
    
    /** 商品详情 */
    private String goodsDetails;
    
    /** 房间号 */
    private String roomNo;
    
    /** 入住姓名 */
    private String checkinName;
    
    /** 桌号 */
    private String deskNo;
    
    /** 消费人数 */
    private String consumeNum;
    
    public BillData() {
        
    }
    
    public BillData(String terminalNumber, Order order) {
        this.terminalNumber = terminalNumber;
        this.receivableAmount = String.format("%.2f", ((float)order.getPaidPrice())/100);
        this.totalNum = order.getAmount() + "";
        this.billSerialNumber = order.getCode();
        this.totalFee = String.format("%.2f", ((float)order.getPrice())/100);
        this.saleTime = DateFormatUtils.format(order.getPayTime(), "yyyy-MM-dd HH:mm:ss");
    }

    /**
     * @return the shopId
     */
    public String getShopId() {
        return shopId;
    }

    /**
     * @return the shopName
     */
    public String getShopName() {
        return shopName;
    }

    /**
     * @return the shopEntityId
     */
    public String getShopEntityId() {
        return shopEntityId;
    }

    /**
     * @return the shopEntityName
     */
    public String getShopEntityName() {
        return shopEntityName;
    }

    /**
     * @return the terminalNumber
     */
    public String getTerminalNumber() {
        return terminalNumber;
    }

    /**
     * @return the shopEntityAddress
     */
    public String getShopEntityAddress() {
        return shopEntityAddress;
    }

    /**
     * @return the telephone
     */
    public String getTelephone() {
        return telephone;
    }

    /**
     * @return the saler
     */
    public String getSaler() {
        return saler;
    }

    /**
     * @return the checkstand
     */
    public String getCheckstand() {
        return checkstand;
    }

    /**
     * @return the cashier
     */
    public String getCashier() {
        return cashier;
    }

    /**
     * @return the receivableAmount
     */
    public String getReceivableAmount() {
        return receivableAmount;
    }

    /**
     * @return the totalNum
     */
    public String getTotalNum() {
        return totalNum;
    }

    /**
     * @return the billSerialNumber
     */
    public String getBillSerialNumber() {
        return billSerialNumber;
    }

    /**
     * @return the totalFee
     */
    public String getTotalFee() {
        return totalFee;
    }

    /**
     * @return the paidAmount
     */
    public String getPaidAmount() {
        return paidAmount;
    }

    /**
     * @return the discountAmount
     */
    public String getDiscountAmount() {
        return discountAmount;
    }

    /**
     * @return the couponAmount
     */
    public String getCouponAmount() {
        return couponAmount;
    }

    /**
     * @return the changeAmount
     */
    public String getChangeAmount() {
        return changeAmount;
    }

    /**
     * @return the settlementWay
     */
    public String getSettlementWay() {
        return settlementWay;
    }

    /**
     * @return the saleTime
     */
    public String getSaleTime() {
        return saleTime;
    }

    /**
     * @return the memberCardNumber
     */
    public String getMemberCardNumber() {
        return memberCardNumber;
    }

    /**
     * @return the totalConsumption
     */
    public String getTotalConsumption() {
        return totalConsumption;
    }

    /**
     * @return the website
     */
    public String getWebsite() {
        return website;
    }

    /**
     * @return the goodsDetails
     */
    public String getGoodsDetails() {
        return goodsDetails;
    }

    /**
     * @return the roomNo
     */
    public String getRoomNo() {
        return roomNo;
    }

    /**
     * @return the checkinName
     */
    public String getCheckinName() {
        return checkinName;
    }

    /**
     * @return the deskNo
     */
    public String getDeskNo() {
        return deskNo;
    }

    /**
     * @return the consumeNum
     */
    public String getConsumeNum() {
        return consumeNum;
    }

    /**
     * @param shopId the shopId to set
     */
    public void setShopId(String shopId) {
        this.shopId = shopId;
    }

    /**
     * @param shopName the shopName to set
     */
    public void setShopName(String shopName) {
        this.shopName = shopName;
    }

    /**
     * @param shopEntityId the shopEntityId to set
     */
    public void setShopEntityId(String shopEntityId) {
        this.shopEntityId = shopEntityId;
    }

    /**
     * @param shopEntityName the shopEntityName to set
     */
    public void setShopEntityName(String shopEntityName) {
        this.shopEntityName = shopEntityName;
    }

    /**
     * @param terminalNumber the terminalNumber to set
     */
    public void setTerminalNumber(String terminalNumber) {
        this.terminalNumber = terminalNumber;
    }

    /**
     * @param shopEntityAddress the shopEntityAddress to set
     */
    public void setShopEntityAddress(String shopEntityAddress) {
        this.shopEntityAddress = shopEntityAddress;
    }

    /**
     * @param telephone the telephone to set
     */
    public void setTelephone(String telephone) {
        this.telephone = telephone;
    }

    /**
     * @param saler the saler to set
     */
    public void setSaler(String saler) {
        this.saler = saler;
    }

    /**
     * @param checkstand the checkstand to set
     */
    public void setCheckstand(String checkstand) {
        this.checkstand = checkstand;
    }

    /**
     * @param cashier the cashier to set
     */
    public void setCashier(String cashier) {
        this.cashier = cashier;
    }

    /**
     * @param receivableAmount the receivableAmount to set
     */
    public void setReceivableAmount(String receivableAmount) {
        this.receivableAmount = receivableAmount;
    }

    /**
     * @param totalNum the totalNum to set
     */
    public void setTotalNum(String totalNum) {
        this.totalNum = totalNum;
    }

    /**
     * @param billSerialNumber the billSerialNumber to set
     */
    public void setBillSerialNumber(String billSerialNumber) {
        this.billSerialNumber = billSerialNumber;
    }

    /**
     * @param totalFee the totalFee to set
     */
    public void setTotalFee(String totalFee) {
        this.totalFee = totalFee;
    }

    /**
     * @param paidAmount the paidAmount to set
     */
    public void setPaidAmount(String paidAmount) {
        this.paidAmount = paidAmount;
    }

    /**
     * @param discountAmount the discountAmount to set
     */
    public void setDiscountAmount(String discountAmount) {
        this.discountAmount = discountAmount;
    }

    /**
     * @param couponAmount the couponAmount to set
     */
    public void setCouponAmount(String couponAmount) {
        this.couponAmount = couponAmount;
    }

    /**
     * @param changeAmount the changeAmount to set
     */
    public void setChangeAmount(String changeAmount) {
        this.changeAmount = changeAmount;
    }

    /**
     * @param settlementWay the settlementWay to set
     */
    public void setSettlementWay(String settlementWay) {
        this.settlementWay = settlementWay;
    }

    /**
     * @param saleTime the saleTime to set
     */
    public void setSaleTime(Date saleTime) {
        this.saleTime = DateFormatUtils.format(saleTime, "yyyy-MM-dd HH:mm:ss");
    }

    /**
     * @param memberCardNumber the memberCardNumber to set
     */
    public void setMemberCardNumber(String memberCardNumber) {
        this.memberCardNumber = memberCardNumber;
    }

    /**
     * @param totalConsumption the totalConsumption to set
     */
    public void setTotalConsumption(String totalConsumption) {
        this.totalConsumption = totalConsumption;
    }

    /**
     * @param website the website to set
     */
    public void setWebsite(String website) {
        this.website = website;
    }

    /**
     * @param goodsDetails the goodsDetails to set
     */
    public void setGoodsDetails(String goodsDetails) {
        this.goodsDetails = goodsDetails;
    }

    /**
     * @param roomNo the roomNo to set
     */
    public void setRoomNo(String roomNo) {
        this.roomNo = roomNo;
    }

    /**
     * @param checkinName the checkinName to set
     */
    public void setCheckinName(String checkinName) {
        this.checkinName = checkinName;
    }

    /**
     * @param deskNo the deskNo to set
     */
    public void setDeskNo(String deskNo) {
        this.deskNo = deskNo;
    }

    /**
     * @param consumeNum the consumeNum to set
     */
    public void setConsumeNum(String consumeNum) {
        this.consumeNum = consumeNum;
    }
}
